Développer avec l'IA sans lui abandonner l'architecture

Une question qui a progressivement changé notre manière de concevoir les projets

Depuis plusieurs mois, mes principaux projets — Trading OS et DevLog AI — évoluent autour d'une même réflexion.

L'intelligence artificielle progresse à une vitesse impressionnante. Elle est désormais capable de générer du code, proposer des architectures, écrire des tests, analyser un dépôt Git ou encore produire de la documentation.

Face à ces capacités, une question est devenue centrale.

Quelle est réellement la place de l'IA dans une architecture logicielle moderne ?

Au début, il aurait été tentant de considérer le modèle de langage comme le cœur du système.

Mais au fil des expérimentations, une conclusion s'est imposée : toutes les décisions ne doivent pas être confiées à une intelligence artificielle.

Certaines doivent rester entièrement déterministes.

D'autres bénéficient énormément des capacités d'interprétation des modèles de langage.

Et entre les deux existe une troisième catégorie, souvent la plus intéressante : une approche hybride où chaque composant joue le rôle pour lequel il est le plus adapté.

Aujourd'hui, cette philosophie constitue l'un des principes directeurs de l'ensemble de mes projets.


Trois catégories de décisions

Au lieu de raisonner en termes de "fonctionnalités IA", j'ai commencé à classer les responsabilités d'un système en trois familles.

Les traitements exclusivement déterministes

Certaines décisions ne devraient jamais dépendre d'un modèle probabiliste.

Lorsqu'un résultat doit être reproductible, vérifiable et identique à chaque exécution, une implémentation déterministe reste la meilleure solution.

C'est notamment le cas de :

  • la logique métier ;
  • les règles de sécurité ;
  • la validation des données ;
  • les calculs financiers ;
  • les moteurs de règles ;
  • les contrôles de cohérence ;
  • les décisions de persistance.

Dans Trading OS, par exemple, le moteur de gestion du risque, les calculs de taille de position ou les validations des règles de trading sont entièrement réalisés dans le Java Core.

De la même manière, dans DevLog AI, les règles métier, les workflows, la gestion des connaissances et le cycle de vie des propositions restent exclusivement sous le contrôle du cœur applicatif.

L'objectif est simple : une même entrée doit toujours produire la même sortie.


Les traitements confiés à l'IA

À l'inverse, certains problèmes n'ont pas de réponse unique.

Ils nécessitent de l'interprétation, de la synthèse ou de la génération de contenu.

C'est précisément dans ces situations que les modèles de langage excellent.

L'IA est utilisée pour :

  • interpréter un contexte complexe ;
  • résumer des informations ;
  • identifier des tendances ;
  • proposer une explication ;
  • générer un brouillon de documentation ;
  • produire une première proposition d'architecture ;
  • transformer un ensemble de connaissances en texte exploitable.

Dans DevLog AI, le moteur Python ne prend aucune décision métier.

Il reçoit un contexte construit par le Java Core, l'interprète et renvoie uniquement une proposition structurée.

Cette proposition pourra ensuite être validée... ou rejetée.

Le modèle de langage reste donc un moteur d'interprétation, jamais une source de vérité.


L'approche hybride

La partie la plus intéressante est sans doute celle où l'IA et les services déterministes collaborent.

Dans cette approche, chaque composant exploite ses points forts.

Les services déterministes :

  • construisent le contexte ;
  • appliquent les règles métier ;
  • contrôlent les permissions ;
  • valident les résultats ;
  • persistent les données.

L'IA :

  • interprète le contexte ;
  • génère des hypothèses ;
  • produit des propositions ;
  • aide à la prise de décision.

Le résultat n'est pas une architecture pilotée par un modèle de langage.

C'est une architecture où l'IA devient un collaborateur spécialisé.


Une philosophie commune à tous les projets

Au départ, cette réflexion est née dans Trading OS.

L'analyse des marchés comporte une forte part d'interprétation, mais la gestion du risque ne peut pas être probabiliste.

Le système sépare donc clairement les responsabilités.

Les analyses techniques, les recommandations ou les synthèses peuvent être assistées par l'IA.

En revanche, les règles qui protègent le capital restent entièrement déterministes.

Cette même philosophie a ensuite guidé la conception de DevLog AI.

Le moteur IA interprète les informations du projet.

Mais il ne peut jamais modifier directement la connaissance du système.

Chaque proposition suit un cycle de validation clairement défini avant de devenir une connaissance fiable.

Plus récemment, cette séparation est également devenue un principe fondateur du futur Developer OS.

Les agents IA ne sont pas conçus pour remplacer les services métier.

Ils viennent enrichir un environnement déjà structuré, composé de services déterministes, d'une mémoire technique, d'Architecture Decision Records, de workflows et d'une validation humaine.


Une architecture pensée pour évoluer

Cette approche présente également un avantage important.

Le système ne dépend pas d'un fournisseur d'IA particulier.

Le moteur d'interprétation peut évoluer.

Le modèle utilisé peut être remplacé.

Les prompts peuvent être améliorés.

Mais les règles métier, elles, restent stables.

Cette séparation permet de faire évoluer les capacités de l'IA sans remettre en cause les fondations de l'application.

À mesure que les modèles progresseront, les composants déterministes conserveront exactement le même rôle.


Une vision différente de l'Agentic SDLC

Les discussions récentes autour de l'Agentic SDLC montrent une évolution intéressante de l'industrie.

De plus en plus d'outils cherchent à automatiser l'ensemble du cycle de développement grâce à des agents spécialisés.

Cette vision est particulièrement inspirante.

Cependant, je préfère l'aborder sous un angle légèrement différent.

Plutôt que de demander à une IA de remplacer les décisions d'ingénierie, je cherche à construire un environnement dans lequel humains, services déterministes et agents spécialisés collaborent.

Les agents apportent leur capacité d'analyse et de synthèse.

Les services déterministes garantissent la cohérence du domaine métier.

Et les décisions importantes restent explicites, documentées et validées.

Cette distinction influence aujourd'hui l'ensemble des choix d'architecture réalisés sur mes projets.


Les enseignements

Cette manière de concevoir les applications m'a appris une chose essentielle.

L'intelligence artificielle ne réduit pas l'importance de l'architecture.

Au contraire.

Plus les modèles deviennent puissants, plus il devient important de définir précisément :

  • ce qui relève des règles métier ;
  • ce qui relève de l'interprétation ;
  • ce qui nécessite une validation humaine.

Cette frontière constitue aujourd'hui l'un des choix d'architecture les plus importants de mes projets.


Et maintenant ?

Les prochaines évolutions continueront dans cette direction.

L'objectif n'est pas de créer des applications entièrement pilotées par une intelligence artificielle.

Il est de construire des systèmes où chaque composant — humain, service déterministe ou agent IA — intervient exactement là où il apporte le plus de valeur.

Avec le recul, je réalise que cette philosophie est devenue le fil conducteur de tous mes projets.

Trading OS, DevLog AI et le futur Developer OS poursuivent finalement le même objectif.

Construire des logiciels où l'intelligence artificielle n'est ni un simple gadget, ni le centre du système, mais un partenaire capable d'amplifier les capacités d'une architecture déjà solide.